﻿using System.Threading.Tasks;

namespace Apex.EventBus.Handlers
{
    /// <summary>
    /// 定义集成事件处理程序的接口
    /// </summary>
    public interface IIntegrationEventHandler
    {
        /// <summary>
        /// 处理集成事件的方法
        /// </summary>
        /// <param name="eventName">事件名称</param>
        /// <param name="eventData">事件数据</param>
        /// <returns>异步任务。</returns>
        // 因为消息可能会重复发送，因此 Handle 内的实现需要是幂等的
        Task Handle(string eventName, string eventData);
    }
}

